package com.sdp.irrigation.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;

import org.springframework.format.annotation.DateTimeFormat;

import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.math.BigDecimal;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 设备实时信息
 * </p>
 *
 * @author zsp
 * @since 2024-12-21
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("irrigation_eq_real_time")
public class IrrigationEqRealTime extends Model<IrrigationEqRealTime> {

    private static final long serialVersionUID=1L;

    /**
     *  内码
     */
    @TableId("key_id")
    private String keyId;

    /**
     * 机井编号
     */
    @TableField("pw_no")
    private String pwNo;

    /**
     * 设备编号
     */
    @TableField("eq_no")
    private String eqNo;

    /**
     * 设备在线状态
     */
    @TableField("online_status")
    private String onlineStatus;

    /**
     * 灌溉状态
     */
    @TableField("irrigation_status")
    private String irrigationStatus;

    /**
     * 施肥状态
     */
    @TableField("fertilization_status")
    private String fertilizationStatus;

    /**
     * 加水成功状态
     */
    @TableField("watering_status")
    private String wateringStatus;

    /**
     * 搅拌成功状态
     */
    @TableField("stirring_status")
    private String stirringStatus;
    
    /**
     * 排沙状态
     */
    @TableField("desilting_status")
    private String desiltingStatus;
    
    /**
     * 是否工作中
     */
    @TableField("work_status")
    private String workStatus;

    /**
     * 报修状态
     */
    @TableField("repair_status")
    private String repairStatus;
    
    /**
     * 订单编号
     */
    @TableField("order_no")
    private String orderNo;
    
    /**
     * 项目编号
     */
    @TableField("project_no")
    private String projectNo;
    
    /**
     * ic卡号
     */
    @TableField("emp_ic")
    private String empIc;
    
    /**
     * 行政区域编码
     */
    @TableField("area_code")
    private String areaCode;
    
    /**
     * 设备注册号
     */
    @TableField("eq_register_no")
    private String eqRegisterNo;
    
    /**
     * 省平台启用状态
     */
    @TableField("province_platform_status")
    private String provincePlatformStatus;
    
    /**
     * 通讯服务端url
     */
    @TableField("xiertai_url")
    private String xiertaiUrl;
    
    /**
     * 省平台url
     */
    @TableField("province_platform_url")
    private String provincePlatformUrl;
    
    /**
     * 项目方url
     */
    @TableField("project_url")
    private String projectUrl;
    
    /**
     * 测试url
     */
    @TableField("test_url")
    private String testUrl;
    
    /**
     * 备用url
     */
    @TableField("sanfang_url")
    private String sanfangUrl;
    
    /**
     * 运维url
     */
    @TableField("yunwei_url")
    private String yunweiUrl;
    
    /**
     * 硬件版本
     */
    @TableField("hd_ver")
    private String hdVer;

    /**
     * 软件版本
     */
    @TableField("sof_ver")
    private String sofVer;
    
    /**
     * mcu序号
     */
    @TableField("mcu_id")
    private String mcuId;

    /**
     * SIM卡的CID号
     */
    @TableField("cc_id")
    private String ccId;
    
    /**
     * 经度
     */
    @TableField("eq_lng")
    private String eqLng;

    /**
     * 纬度
     */
    @TableField("eq_lat")
    private String eqLat;
    
    /**
     * 设备初始化设置状态
     */
    @TableField("command_set_status")
    private String commandSetStatus;
    
    /**
     * 当前卡内余额
     */
    @TableField("cur_money")
    private BigDecimal curMoney;

    /**
     * 当前取水量
     */
    @TableField("cur_water")
    private BigDecimal curWater;

    /**
     * 当前用电量
     */
    @TableField("cur_ele")
    private BigDecimal curEle;
    
    /**
     * 订单开始时间
     */
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @TableField("order_start")
    private LocalDateTime orderStart;
    
    /**
     * 订单结束时间
     */
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @TableField("order_end")
    private LocalDateTime orderEnd;
    
    /**
     * 订单状态
     */
    @TableField("order_status")
    private String orderStatus;

    /**
     * 记录生成时间
     */
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 记录更新时间
     */
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @TableField("update_time")
    private LocalDateTime updateTime;


    @Override
    protected Serializable pkVal() {
        return this.keyId;
    }

}
